分布式任务功能介绍
若您的任务需要启动大量容器协同训练,您可以提交分布式训练任务。
在项目详情页面,您可以点击【分布式训练】按钮打开快速任务创建抽屉。
参数填写说明
- 镜像
必选项。
镜像是容器中的概念,每个在平台中提交的任务都由一个或多个容器来执行,容器是由镜像创建的运行实例。可以认为镜像打包了一个linux环境,包含了程序运行所需要的各项依赖。
AI计算平台提供了官方的公共镜像,创建训练任务时,系统会根据项目的编程语言和算法框架推荐镜像。您可以使用官方推荐的镜像,也可以使用自己自定义的镜像。
- 队列
必选项。
默认使用公共的默认default队列,若需要申请专属资源,可主动联系管理员申请专属队列。
- 计算卡类型
必选项。
选择任务运行时的计算卡硬件款型。
- 计算卡个数
必选项。 选择任务运行时的GPU硬件资源个数,最少可选择0个,选择0时默认为cpu训练,最多可以选择8个。
- 启动命令
必选项。
设置任务运行所需要的命令和超参数,不支持中文字符和换行,随任务的不同而不同。例如:
python train.py
/bin/bash start.sh
cd /userhome && python start.py --output=/userhome/xx
- 引用代码
必选项。
设置任务运行所依赖的代码分支。(本地上传的代码无需选择此条)
- 子任务名称
必填项。
运行的子任务名称,一个子任务对应一个运行容器。
- 子任务数量
必填项。
以此种配置运行的子任务数量,不超过20个。
参数填写完成后,点击【保存并运行任务】(下次打开抽屉时会记录上次填写记录)完成任务创建。创建完成后,自动跳转至任务详情。此时任务处于【等待】状态,等待系统调度资源。
当分配到资源后,任务状态会变为【运行中】,您可以实时查看任务日志。
同时平台集成了【tensorboard】功能实时监控训练情况,可以通过TensorBoard来进行可视化分析,需要如下操作:
- 在代码中使用tensorboardX将数据写入到指定目录
/output/logs
中; - 在【运行任务】界面的操作菜单点击TensorBoard按钮即可查看。
任务运行完成后,您可以在【output】页面查看任务的运行结果,支持对结果下载至本地或生成数据集或模型。